Version 15.2 optimized and improved the APIs that support iParts; therefore, you need to modify any iParts you developed for 15.1 to have them work with these API changes.
1. In your iPart project, remove references to Asi.Web.iParts.Common.Utilities and Asi.Web.iParts.Common.WebControls. 15.2 deprecated these assemblies and moved their functionality.
2. In your iPart code, remove any 'using' statements that reference the above namespaces.
3. If you are using the TitleBar control, make sure your project references the Asi.Web assembly. In your web controls and pages, update the TitleBar control to reference the new assembly and namespace:
□ Assembly change: Asi.Web.iParts.Common.WebControls > Asi.Web
□ Namespace change: Asi.Web.iParts.Common.WebControls > Asi.Web.UI.WebControls
For example, the line:
<%@ Register TagPrefix="ipartCommon" Assembly="Asi.Web.iParts.Common.WebControls" Namespace="Asi.Web.iParts.Common.WebControls" %>
becomes:
<%@ Register TagPrefix="ipartCommon" Assembly="Asi.Web"
Namespace="Asi.Web.UI.WebControls" %>
4. Replace the use of AppContext.CurrentIdentity.ContactMaster with SecurityHelper.LoggedInImisId.
Tip: When you only need to check for a logged in user, use SecurityHelper.IsAuthenticatedUser.
5. 15.2 deprecated Asi.Web.iParts.Common.Utilities.Helper class and moved its methods to Asi.Security.Utility.SecurityHelper and Asi.Utilities.PartHelper. Modify any uses of the Helper class as shown below. Note: When using the new classes, you must either fully qualify the class namespace or add the appropriate using statement to your code.
□ Methods moved:
■ Helper.CheckDisplayAsEmpty > PartHelper.CheckDisplayAsEmpty
■ Helper.FindControls > PartHelper.FindControls
■ Helper.FindControlsRecursive > PartHelper.FindControlsRecursive
■ Helper.GetSelectedImisId > SecurityHelper.GetSelectedImisId
■ Helper.LoggedInImisId > SecurityHelper.LoggedInImisId
□ Methods no longer supported, so refactor:
■
Helper.GetSelectedImisIdWithException
When used to check for an authenticated user, replace with SecurityHelper.IsAuthenticatedUser.
■
Helper.ImisConnection
When used to
check for an authenticated user, replace with SecurityHelper.IsAuthenticatedUser. When used to
retrieve a CContactUser object, use iBO.ContactManagement.CContactUser.LoginByWebLogin(AppPrincipal.CurrentIdentity.LoginName).
Recommended:
Use the SOA data access library in place of the iBO library when possible.
■ Helper.SetCurrentContactKey
■ Helper.SetSelectedImisId